Method for autonomously parking and un-parking a motor vehicle

ABSTRACT

A method for autonomously parking or un-parking a motor vehicle includes the steps of locating the motor vehicle within a parking area, setting a destination location within the parking area, generating and setting a path from the location of the motor vehicle to the destination location, and autonomously driving the motor vehicle along the path. The path is generated by (a) generating a first set of nodes from the location of the motor vehicle, (b) assigning a cost to each node in the first set of nodes, (c) selecting a lowest cost node from the first set of nodes, (d) generating another set of nodes from the selected node, (e) assigning a cost to each of the newly generated nodes, (f) selecting a lowest cost node from all of the nodes, and (g) repeating steps (d)-(f) until a lowest cost node is located at the destination location.

FIELD

The invention relates generally to autonomous driver assistance systemsfor motor vehicles, and more particularly to autonomous driverassistance systems for parking and un-parking or retrieving a motorvehicle.

BACKGROUND

The statements in this section merely provide background informationrelated to the present disclosure and may or may not constitute priorart.

Smart car technologies such as free-ranging on grid navigation, as wellas parking guidance and information systems, aid in the prevention ofhuman error when drivers operate a vehicle. Such technologies have beenused to improve navigation of roadways, and to augment the parkingabilities of motor vehicle drivers while the drivers are present withinthe motor vehicle. For example, rear view camera systems and impactalert systems have been developed to assist the operator of the motorvehicle while parking to avoid collisions. In addition, autonomousparking systems have been developed that autonomously park the motorvehicle in a parallel parking spot once the operator of the motorvehicle has positioned the motor vehicle in a predefined locationproximate the parking spot.

While these systems are useful for their intended purpose, they requirethat the operator of the motor vehicle locate the parking spot and driveto the parking spot. Thus, there is a need in the art for improved smartcar technologies that utilize preexisting infrastructure to autonomouslypark a motor vehicle. Moreover, there is a need to implement automaticparking systems in motor vehicles that do not increase cost, and whichalso increase the accuracy and robustness of parking systems whileproviding additional redundant ease of access and safety features.

SUMMARY

A method for autonomously parking or un-parking a motor vehicle isprovided. The method includes the steps of locating the motor vehiclewithin a parking area, setting a destination location within the parkingarea, generating and setting a path from the location of the motorvehicle to the destination location, and autonomously driving the motorvehicle along the path from the location of the motor vehicle to thedestination location. The path is generated by (a) generating a firstset of nodes from the location of the motor vehicle, (b) assigning acost to each node in the first set of nodes, (c) selecting a lowest costnode from the first set of nodes, (d) generating another set of nodesfrom the selected node, (e) assigning a cost to each of the newlygenerated nodes, (f) selecting a lowest cost node from all of the nodes,and (g) repeating steps (d)-(f) until a lowest cost node is located atthe destination location.

In one aspect, generating the first set of nodes includes generating aplurality of nodes each a fixed distance from the location of the motorvehicle and each at a different steering angle.

In another aspect, generating the another set of nodes includesgenerating a plurality of nodes each the fixed distance from theselected node of the first set of nodes and each at one of the differentsteering angles.

In another aspect, the fixed distance is approximately 2 meters.

In another aspect, generating the first set of nodes and the another setof nodes includes generating a set of forward nodes in front of themotor vehicle and a set of reverse nodes behind the motor vehicle.

In another aspect, the set of forward nodes includes a node straightahead of the motor vehicle, four nodes to the right of the motorvehicle, and four nodes to the left of the motor vehicle.

In another aspect, assigning a cost to each of the newly generated nodesincludes adding a base cost to the cost from the selected node fromwhich the newly generated nodes are generated.

In another aspect, assigning a cost to each of the newly generated nodesfurther includes adding a turning cost to the base cost, wherein a valueof the turning cost increases with an increase in the steering angle.

In another aspect, assigning a cost to each of the newly generated nodesfurther includes adding a reverse cost to the base cost if the newlygenerated node is behind the motor vehicle.

In another aspect, the base cost of a newly generated node is a functionof the distance of the newly generated node from the destinationlocation.

In another aspect, generating a path further comprises a step ofdetermining whether a newly generated node would be in an allowed areaof the parking map or in an obstructed area of the parking map, andwherein any nodes in obstructed areas are not generated.

In another aspect, generating a path further includes a step ofdetermining whether a newly generated node has been previously generatedand wherein any new nodes that have been previously generated are notgenerated again.

Further aspects, examples, and advantages will become apparent byreference to the following description and appended drawings whereinlike reference numbers refer to the same component, element or feature.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings described herein are for illustration purposes only and arenot intended to limit the scope of the present disclosure in any way.The components in the figures are not necessarily to scale, emphasisinstead being placed upon illustrating the principles of the invention.Moreover, in the figures, like reference numerals designatecorresponding parts throughout the views.

FIG. 1 is a schematic diagram of an exemplary motor vehicle having anautomatic valet system according to the principles of the presentdisclosure;

FIG. 2 is a schematic diagram of an exemplary parking area;

FIG. 3 is a flow chart depicting a method for autonomously parking andun-parking the motor vehicle according to the principles of the presentdisclosure; and

FIG. 4 is an example of a node tree used in the method for autonomouslyparking and un-parking the motor vehicle.

DETAILED DESCRIPTION

The following description is merely exemplary in nature and is notintended to limit the present disclosure, application or uses.

With reference to FIG. 1, an autonomous valet system according to theprinciples of the present disclosure is indicated by reference number10. The autonomous valet system 10 is used with an exemplary motorvehicle 12 and an exemplary mobile device 14. The motor vehicle 12 isillustrated as a passenger vehicle, however, the motor vehicle 12 may bea truck, sport utility vehicle, van, motor home, or any other type ofvehicle without departing from the scope of the present disclosure. Themobile device 14 is preferably a mobile phone, however, the mobiledevice 14 may be a mobile computer, laptop, tablet, smart watch, or anyother device in wireless communication with the motor vehicle 12. Theautonomous valet system 10 runs an autonomous valet method orapplication, as will be described in greater detail below.

The autonomous valet system 10 is operable to autonomously park andun-park the motor vehicle 12. The autonomous valet system 10 may havevarious configurations without departing from the scope of the presentdisclosure but generally includes a sensor sub-system 16 and acommunication sub-system 18 each in communication with a controller 20.The controller 20 communicates with a vehicle control system 22. Thesensor sub-system 16 includes a plurality of sensors 24A-D mounted alongthe periphery of the motor vehicle 12. In the example provided, thesensors 24A-D are located at the front, left, right, and rear of themotor vehicle 12, respectively, to provide 360 degrees of overlappingcoverage. However, it should be appreciated that the sensor sub-system16 may have any number of sensors 24 without departing from the scope ofthe disclosure. Each of the sensors 24A-D is operable to collect orsense information in a predefined area surrounding the motor vehicle 12.Information from the sensors 24A-D is communicated to the controller 20.In a preferred embodiment, the sensors 24A-D are Light Detection andRanging (LiDAR) sensors. However, the sensors 24A-D may be cameras,radar or sonar sensors, or any other type of proximity sensors. Thecommunication sub-system 18 includes a receiver/transmitter operable toreceive and/or transmit wireless data to the mobile device 14. Thewireless data is communicated to the controller 20. In addition, thecommunication sub-system 18 may communicate with other vehicles(vehicle-to-vehicle communication), infrastructure such as a parking lot(vehicle-to-infrastructure), and may receive GPS data.

The controller 20 is a non-generalized, electronic control device havinga preprogrammed digital computer or processor, memory or non-transitorycomputer readable medium used to store data such as control logic,instructions, image data, lookup tables, etc., and a plurality ofinput/output peripherals or ports. The processor is configured toexecute the control logic or instructions. The controller 20 may haveadditional processors or additional integrated circuits in communicationwith the processor, such as perception logic circuits for analyzing thesensor data.

The controller 20 may optionally communicate with a human machineinterface (HMI) 26. The HMI 26 is disposed within the cabin of the motorvehicle 12 and is preferably a touch screen accessible by an operator ofthe motor vehicle 12. However, the HMI 26 may be any haptic, verbal, orgesture control system without departing from the scope of the presentdisclosure. The HMI 26 may be used to activate and control theautonomous valet system 10. Additionally, the mobile device 14 may beused to activate and control the autonomous valet system 10.

The vehicle control system 22 includes any systems that implement theautonomous valet functions which include parking and un-parking themotor vehicle 12. For example, the vehicle control system 22 may includea braking control system, throttle control system, steering controlsystem, body control system, etc. The vehicle control system 22 may alsoinclude any advanced driver assistance system (ADAS) functions thatautomate, adapt, or enhance vehicle systems in order to increase vehiclesafety and/or operator driving performance. For example, the vehiclecontrol system 22 may include ADAS technologies that alert the driver topotential problems or to avoid collisions by implementing safeguards,such as autonomously controlling the motor vehicle 12. The vehiclecontrol system 22 may also include ADAS features that enhance certainsystems, such as automated lighting, adaptive cruise control, automatedbraking, or improved blind spot elimination using camera technology.Finally, it should be appreciated that the vehicle control system 22 maybe part of the autonomous valet system 10 without departing from thescope of the present disclosure.

Turning to FIG. 2, an exemplary parking area is indicated by referencenumber 30. The parking area 30 includes a plurality of parking spots 32.It should be appreciated that the parking area 30 may have anyconfiguration, may be a parking structure, and may have any number ofparking spots 32 without departing from the scope of the presentdisclosure. The parking area 30 includes a parking area infrastructure34 that may communicate with the motor vehicle 12.

With reference to FIG. 3, and continued reference to FIGS. 1 and 2, amethod for autonomously parking and un-parking the motor vehicle 12 inthe parking area 30 is indicated by reference number 50. By way ofexample, the method 50 illustrates parking the motor vehicle 12 withinthe parking area 30. However, it should be appreciated that the method50 may be used identically when un-parking or retrieving the motorvehicle 12 from the parking area 30. The method 50 begins at step 52where an operator of the motor vehicle 12 initiates or activates theautonomous valet system 10 using either the HMI 26 or the mobile device14. For example, when parking, the operator may use the HMI 26 whileduring un-parking the operator may use the mobile device 14.

At step 54, the motor vehicle 12 is located within, or relative to, theparking area 30. The motor vehicle 12 may be located in the parking area30 by positioning the motor vehicle 12 in a predefined starting locationor parking spot or by GPS coordinates. At step 56 the motor vehicle 12communicates with the parking area infrastructure to receive a map ofthe parking area 30. The map may be defined as a Cartesian coordinatesystem with x and y coordinates. The motor vehicle 12 is located on themap using (x,y,θ) coordinates, where θ is a steering angle or a headingof the motor vehicle 12. At step 58, a destination is set in the parkingarea 30. In the example provided, the destination is a parking spotindicated by reference number 59 in FIG. 2. The destination may beselected by an operator of the motor vehicle 12 or may be assigned bythe parking area infrastructure 34 based on open or available parkingspots 32. Alternatively, in an un-park mode, the destination locationmay be the location of the mobile device 14. It should be appreciatedthat steps 54-58 may be done in various orders or simultaneously withoutdeparting from the scope of the present disclosure.

Next, at step 60, a node tree path planner is generated from thelocation of the motor vehicle 12 to the destination location 59. Fromthe node tree path planner a lowest cost path is selected, as shown byreference number 61 in FIG. 2. The lowest cost path 61 operates as apath for the motor vehicle 12 to take from the starting location to thedestination location 59. Finally, at step 62, the autonomous valetsystem 10 drives the mover vehicle along the lowest cost path 61 usingthe vehicle control system 22. The sensor sub-system 16 may be usedduring autonomous driving to avoid obstacles not located in thepredefined parking area map, such as pedestrians, other vehicles, etc.

Turning now to FIG. 4, the method of generating the node tree pathplanner will now be described in greater detail. The node tree pathplanner begins by generating a first set of nodes a₁, a₂, a₃, a₄, a₅ . .. a_(n) from the starting location L_(s) of the motor vehicle 12. Eachnode is generated a distance ‘d’ from the starting location L_(s) at apredefined turn angle φ. It should be appreciated that any number ofnodes may be generated however, in a preferred embodiment, nine forwardnodes are generated and nine reverse nodes are generated. The distance dmay have various values but is preferably approximately 2 meters. Theturn angle φ may also have various values but preferably equally dividesthe nodes from straight ahead to a full right turn and a full left turn.Each of the nodes is defined by (x,y,θ) coordinates. Next, any nodesthat are blocked by the parking area map are removed or not generated.

Once the first set of nodes are generated, the node tree path plannerassigns a cost to each of the nodes. The cost for each node in the firstset is equal to a base cost plus a turning cost. The base cost is afunction of the distance from the node to the destination locationL_(d). Thus, the closer the node is to the destination location L_(d),the lower the base cost. The turning cost increases with an increase inthe steering angle θ. In other words, the larger the turn required toreach the node, the greater the cost. If the node is a reverse node thatwould require the motor vehicle to change gears, an additional reversecost is added to the node.

Once the nodes have been assigned a cost, the node tree path plannerselects the lowest cost node, such as node a₅ in the example provided,and generates another set of nodes b₁, b₂, b₃, b₄ . . . b_(n) from theselected lowest cost node. Each of the nodes are generated at a distanced from the node a₅ at turn angles φ. Any nodes located in areasdesignated as obstructed by the parking area map are not generated.Moreover, any nodes previously generated are not generated again. Next,costs are assigned to each node b₁, b₂, b₃, b₄ . . . b_(n) as describedabove except that the base cost also includes the cost of node a₅. Thus,each child node inherits the cost of the parent node from which it isgenerated.

In one embodiment, the base cost also includes a generation cost whichis a function of which generation the node is from the starting locationnode. For example, a generation cost may be added after between 20 or 30generations in order to discourage further generations. In anotherembodiment, the cost of a child node is compared to a fixed or variablethreshold value. If the cost of the child node exceeds the thresholdvalue, the node is not generated or no further child nodes are generatedfrom the node. The tree node path planner then selects the lowest costnode from all of the nodes generated thus far and repeats the methoduntil a newly generated node is at the destination location L_(d).

Once a node is at the location L_(d), the node tree path planner tracesthe path back to the starting location Ls and sets the path 61. Themotor vehicle 12 may be driven from node to node along the path or maybe driven along an average or weighted curve along the path.

The description of the invention is merely exemplary in nature andvariations that do not depart from the gist of the invention areintended to be within the scope of the invention. Such variations arenot to be regarded as a departure from the spirit and scope of theinvention.

The following is claimed:
 1. A method for autonomously parking or un-parking a motor vehicle, the method comprising: determining a location of the motor vehicle relative to a parking area; setting a destination location within the parking area; generating a path comprising the steps of: (a) generating a first set of nodes from the location of the motor vehicle; (b) assigning a cost to each node in the first set of nodes; (c) selecting a lowest cost node from the first set of nodes; (d) generating another set of nodes from the selected node; (e) assigning a cost to each of the newly generated nodes; (f) selecting a lowest cost node from all of the nodes; (g) repeating steps (d)-(f) until a lowest cost node is located at the destination location; and (h) setting a path from the location of the motor vehicle to the destination location comprising the last selected lowest cost node and parent nodes connected to the last selected lowest cost node; and autonomously driving the motor vehicle along the path from the location of the motor vehicle to the destination location.
 2. The method of claim 1 wherein generating the first set of nodes includes generating a plurality of nodes each a fixed distance from the location of the motor vehicle and each at a different steering angle.
 3. The method of claim 2 wherein generating the another set of nodes includes generating a plurality of nodes each the fixed distance from the selected node of the first set of nodes and each at one of the different steering angles.
 4. The method of claim 3 wherein the fixed distance is approximately 2 meters.
 5. The method of claim 3 wherein generating the first set of nodes and the another set of nodes includes generating a set of forward nodes in front of the motor vehicle and a set of reverse nodes behind the motor vehicle.
 6. The method of claim 5 wherein the set of forward nodes includes a node straight ahead of the motor vehicle, four nodes to the right of the motor vehicle, and four nodes to the left of the motor vehicle.
 7. The method of claim 5 wherein assigning a cost to each of the newly generated nodes includes adding a base cost to the cost from the selected node from which the newly generated nodes are generated.
 8. The method of claim 7 wherein assigning a cost to each of the newly generated nodes further includes adding a turning cost, wherein a value of the turning cost increases with an increase in the steering angle.
 9. The method of claim 8 wherein assigning a cost to each of the newly generated nodes further includes adding a reverse cost if the newly generated node is behind the motor vehicle.
 10. The method of claim 9 wherein the base cost of a newly generated node is a function of the distance of the newly generated node from the destination location.
 11. The method of claim 1 wherein generating a path further comprises a step of determining whether a newly generated node would be in an obstructed area of the parking map, and wherein any nodes in obstructed areas are not generated.
 12. The method of claim 1 wherein generating a path further includes a step of determining whether a newly generated node has been previously generated and wherein any new nodes that have been previously generated are not generated again.
 13. The method of claim 1 wherein generating a path further includes the step of comparing the cost of a newly generated node to a threshold value and not generating the node if the cost of the node exceeds the threshold value.
 14. A method for autonomously parking or un-parking a motor vehicle, the method comprising: locating the motor vehicle within a parking area; setting a destination location within the parking area; generating a node tree from the location of the motor vehicle to the destination location, wherein the node tree includes a plurality of linked nodes organized into separate generations, each node having a cost associated therewith, wherein the cost of a node is equal to a base cost plus an inherited cost and a turning cost; selecting a path from the location of the motor vehicle to the destination location having the lowest cost; and autonomously driving the motor vehicle along the path from the location of the motor vehicle to the destination location.
 15. The method of claim 14 wherein a generation cost is added to the cost of a node if the generation of the node exceeds a predetermined threshold.
 16. The method of claim 15 wherein the turning cost is a function of the steering angle value of the node.
 17. The method of claim 16 wherein the inherited cost is equal to the cost of the linked previous generation node.
 18. The method of claim 14 wherein a set of coordinates in the parking area are blocked from having nodes generated by the node tree.
 19. The method of claim 14 wherein a reverse cost is added to the cost of the node, wherein the reverse cost is a function of the distance to the destination location.
 20. A method for autonomously parking or un-parking a motor vehicle, the method comprising: locating the motor vehicle relative to a parking area; setting a destination location within the parking area; generating a path comprising the steps of: (a) generating a first set of nodes from the location of the motor vehicle; (b) assigning a cost to each node in the first set of nodes; (c) selecting a lowest cost node from the first set of nodes; (d) generating another set of nodes linked to the selected node and offset from the selected node by a fixed distance and a steering angle; (e) assigning a cost to each of the newly generated nodes, wherein the cost of a node is equal to a base cost plus an inherited cost from the selected node, a turning cost, and a reverse cost if the newly generated node is behind the selected node; (f) selecting a lowest cost node from all of the nodes; (g) repeating steps (d)-(f) until a lowest cost node is located at the destination location; and (h) setting a path from the location of the motor vehicle to the destination location comprising the last selected lowest cost node and parent nodes connected to the last selected cost node; and autonomously driving the motor vehicle along the path from the location of the motor vehicle to the destination location. 